import sys  
from PyQt6.QtWidgets import QApplication, QMainWindow, QProgressBar, QVBoxLayout, QWidget  
from PyQt6.QtCore import QTimer, Qt  
  
class ProgressWindow(QMainWindow):  
    def __init__(self):  
        super().__init__()  
  
        # 创建一个中心部件（QWidget）来容纳进度条  
        central_widget = QWidget()  
        self.setCentralWidget(central_widget)  
  
        # 创建一个垂直布局  
        layout = QVBoxLayout(central_widget)  
  
        # 创建一个进度条并添加到布局中  
        self.progress_bar = QProgressBar(self)  
        self.progress_bar.setRange(0, 100)  # 设置进度范围  
        layout.addWidget(self.progress_bar)  
  
        # 创建一个定时器来模拟进度更新  
        self.timer = QTimer(self)  
        self.timer.timeout.connect(self.update_progress)  
        self.timer.start(100)  # 每100毫秒更新一次进度  
  
        # 设置窗口标题和大小  
        self.setWindowTitle('Progress Bar Example')  
        self.setGeometry(100, 100, 300, 200)  

        # 移除最大化按钮的样式标志  
        self.setWindowFlags(self.windowFlags() & ~Qt.WindowType.WindowMinMaxButtonsHint) 
  
    def update_progress(self):  
        # 假设这是你的长时间运行操作的一部分  
        # 这里我们只是简单地模拟进度更新  
        current_value = self.progress_bar.value()  
        if current_value < 100:  
            self.progress_bar.setValue(current_value + 1)  
        else:  
            # 停止定时器并可能执行其他操作（如显示完成消息）  
            self.timer.stop()  
  
if __name__ == '__main__':  
    app = QApplication(sys.argv)  
    window = ProgressWindow()  
    window.show()  
    sys.exit(app.exec())